home *** CD-ROM | disk | FTP | other *** search
/ The Business Master (3rd Edition) / The Business Master (3rd Edition).iso / files / artience / amateur / syntax.txt < prev    next >
Text File  |  1990-12-16  |  3KB  |  76 lines

  1.  
  2.                                    SYNTAX.TXT
  3.  
  4.                             (The Amateur Reasoner v1.7.0)
  5.  
  6.                                  Norman Newman
  7.                                 Kibbutz  Tsor'a
  8.                                MP Shimshon 99705
  9.                                     Israel
  10.                                  November 1990
  11.  
  12.  
  13. This document explains the syntax needed for rule files which are used as
  14. input for the Amateur Reasoner inference engine. The syntax is described
  15. here using Backus-Naur form, where
  16.          ::=  denotes 'is equivalent to'
  17.          |    denotes 'or'
  18.          <text> indicates that 'text' must appear literally.
  19.  
  20. program    ::= statements
  21. statements ::= stmt | stmt statements
  22. stmt       ::= rule | goal | prompt | comment | intro
  23.  
  24. rule       ::= <if> prem <then> prem <.>
  25. prem       ::= premise | premise <&> prem
  26. premise    ::= text <=> text
  27.  
  28. goal       ::= <goal (> token <)>
  29.  
  30. prompt     ::= <prompt (> text <) = > text <?>
  31. intro      ::= <intro = > text <.>
  32. comment    ::= <!> text <!>
  33. text       ::= token | token text
  34.  
  35. token      ::= any combination of alphanumeric characters upto a maximum
  36.                length of 255. A token may not include the characters
  37.                ( ) , . = & ? !
  38.  
  39. Of the five kinds of statement, the goal statement must appear only once; a
  40. second goal statement will be flagged as an error but ignored. The 'intro'
  41. statement is optional, but if it appears, it may do so only once; more than
  42. one intro statement is a fatal parsing error. All the other statement forms
  43. are optional, although a rule file without rules is not very useful.
  44.  
  45. Comments may be inserted anywhere in the program (although not inside
  46. tokens) and are delimited by exclamation marks (!). Comments may not benested. It should be noted that comments add to the clarity of a program
  47. but cause slower parsing.
  48.  
  49. The Amateur Reasoner is case sensitive, although the four keywords (if, goal,
  50. prompt and goal) may be entered in upper or lower case. Rule files are
  51. free-form ASCII files and empty lines or indentation may be introduced at
  52. will to enhance readability.
  53.  
  54. The file 'animal' is an example of a rule file which demonstrates the
  55. syntactic forms and rules.
  56.  
  57. The program is invoked by simply typing 'amateur' at the DOS prompt. The
  58. name of the rule file may be passed as an optional parameter; the program
  59. will prompt for a rule file if one is not given. There is no default
  60. extension for the rule file. If the environmental variable EXPERT$ is
  61. defined (by adding the line 'SET EXPERT$=<directory>' to your AUTOEXEC.BAT
  62. file), the program will be able to find your rule files without difficulty.
  63. If this variable is not defined, and the rule file is not in the current
  64. directory, its name must be prefaced with its complete path. Examples of
  65. invocation -
  66.  
  67.        C> amateur animal
  68.  
  69.        C> amateur
  70.  
  71.        C> amateur c:\ai\animal
  72.  
  73. Comments, queries and bug reports are cordially invited (although I hope
  74. that there won't be any of the third category!).
  75.  
  76.